/*
 * Copyright (c) 2021 Huawei Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import app from '@system.app';
import state from '../../../../share/common/state.js'
import config from '../../../../share/common/config.js'
import constants from '../../../../share/common/scripts/constants.js'
import centralOperator from '../../../../share/common/scripts/centralOperator';

const showState = [state.connection.PERMISSION_FORBIDDEN]
const JS_TAG = 'JS/Component/Permission forbidden dialog: ';
const SETTING_BUNDLE_NAME = 'com.android.settings';
const SETTING_ACTIVITY_NAME = 'com.android.settings.HWSettings';
const SETTING_ACTION = 'android.settings.APPLICATION_DETAILS_SETTINGS';

export default {
  props: ['state'],
  computed: {
    showObject() {
      return showState.indexOf(this.state) > -1;
    }
  },
  onInit() {
    console.info(JS_TAG + 'onInit');
  },
  exit() {
    app.terminate();
  },
  enterSetting() {
    centralOperator.startAbility({
      bundleName: SETTING_BUNDLE_NAME,
      abilityName: SETTING_ACTIVITY_NAME,
      intentParams: {},
      intentOptions: {
        flags: constants.FLAG_NOT_OHOS_COMPONENT,
        action: SETTING_ACTION,
        uri: 'package:' + config.bundleName
      },
      success: app.terminate
    });
  },
}